The present invention relates to the routing of signaling messages in a communications network, and, more particularly, to methods and systems for processing and routing signaling messages associated with ported subscribers in a wireless communication network.
Within the global wireless telecommunications industry, the current trend in network technology is divided between global system for mobile communications (GSM) and ANSI-41 based architectures. In many respects, GSM and ANSI-41 based networks are quite similar, with the primary differences between the two technologies simply relating to the protocols used to communicate between the various network entities, and the operating frequencies of the communication handsets themselves. As such, in the interest of clarity, discussions of the present invention will henceforth be limited to GSM type network implementations. However, it should be appreciated that the present invention could be similarly practiced in an ANSI-41, Personal Communication Services (PCS) or similar type network.
A typical GSM network architecture is illustrated in FIG. 1. As shown in FIG. 1, the typical GSM network, generally indicated by the numeral 100, incorporates a number of functional elements or nodes which are appropriately interconnected so as to obtain the desired overall network service. These network nodes include a first mobile switching center 110, a gateway mobile switching center 112, a first home location register (HLR) 114, a second home location register 116, a visitor location register (VLR) 118, and a second MSC 120. Briefly, an HLR is a database that is used to store subscriber information for all customers within the home service area of the GSM service provider. Functionally, an HLR is linked through a signaling network to other service areas such that subscriber information may be efficiently shared between geographically diverse networks, a characteristic that facilitates seamless inter-network roaming. Like an HLR node, a VLR node is also a database that contains subscriber information. However, a VLR is specifically used to store information related to subscribers who are not in their home service area. More particularly, a VLR is where roaming related data for a customer is stored when the customer activates their handset outside of their designated home service area.
Again, the network elements described above (HLR and VLR) can be thought of as essentially databases or database processing nodes. Unlike these database nodes, MSCs and GMSCs are generally identified as network switching elements. Among their many functions, MSCs and GMSCs are responsible for determining which cell site will take possession of a call. Such hand off control is facilitated by a communication link between an MSC and an associated Base Station Controller (BSC)/Base Transceiver Station (BTS) pair (not shown). A GMSC node typically has the added distinction of providing connectivity to one or more HLR nodes; otherwise, MSC and GMSC functionality is very similar.
As generally illustrated in FIG. 1, GMSC 112 is coupled via signaling links to two HLR database nodes 114 and 116 described above, and as such, all signaling message access to these database nodes is controlled and administered by GMSC 112. Of particular relevance to the present invention are the signaling aspects of the GSM network described above, especially those aspects associated with the signaling interactions between HLR, VLR and MSC or GMSC type nodes. A more detailed explanation of HLR, VLR and GMSC operation is provided below.
Within a GSM wireless communication network, each mobile station handset is assigned a unique identification number known as an International Mobile Subscriber Identity (IMSI) identification number. In the case of European GSM-type network implementations, the IMSI code is typically associated with a particular telephone handset. In such networks, each user can also be assigned one or more Mobile Station Integrated Services Digital Network (MSISDN) numbers. In the wireless telecommunications industry, MSISDN numbers are analogous to the 10 digit telephone numbers in a conventional North American wired network. The fact that multiple MSISDN numbers can be associated with a single IMSI number indicates that more than one MSISDN number can be assigned and used to reach a single mobile station handset. It should be appreciated that in this disclosure, the term xe2x80x9cMobile Identification Numberxe2x80x9d (MIN) is used generically to refer to IMSI, MSISDN, Mobile Global Title, ANSI-41 Mobile Identification Numbers (MIN) and Mobile Directory Numbers (MDN), and other identification numbers associated with subscribers or services in a wireless communication network.
In any event, an MSISDN number is dialed whenever a user wants to communicate with a particular mobile station handset. As indicated in FIG. 1, GMSC 112, by analyzing a part of the dialed MSISDN number, determines the particular HLR that is storing routing information associated with the called mobile station. By retrieving and utilizing such routing information, the GSM network is able to locate the called mobile station in response to a call attempt so that a call connection can be established between the calling party and the called mobile station. It should also be appreciated that, depending on the nature of the call or signaling event, a GMSC may analyze and direct an HLR lookup based on either the IMSI or MSISDN number associated with the called or calling party.
In the particular example presented in FIG. 1, MSC 110 launches an ISDN user part (ISUP) initial address message (IAM) (message 1) in an attempt to establish a call originated by a mobile subscriber that is being serviced by MSC 110. Those skilled in the art of mobile communication networks will appreciate that an ISUP IAM message is one of many signaling messages that are employed in a signaling system 7 (SS7) based signaling network to facilitate the setup of a telephone call. A detailed discussion of SS7 signaling message types and their associated function can be found in Signaling System #7 by Travis Russell, McGraw-Hill Publishing 1998. Additionally, a detailed discussion of SS7 related signaling within a GSM network can be found in The GSM System for Mobile Communications by Michel Mouly and Marie-Bernadette Pautet, Cell and Sys 1992.
Returning to a discussion of FIG. 1, it will be appreciated that ISUP IAM message (1) is received by GMSC 112, which in turn analyzes the message. More particularly, GMSC 112 examines the MSISDN value associated with the called party, as well as service indication information contained in the message. Shown in FIG. 2 is a simplified routing database table 150 contained within GMSC 112. This sample GMSC routing database table 150 is keyed or indexed based on a block or range of MSISDN numbers 152. Associated with each block or range of MSISDN numbers is an address or identifier 154 of an associated HLR node.
Returning to FIG. 1, GMSC 112 performs a lookup in HLR routing table 150, determines that this message should be delivered to HLR 114, and subsequently formulates a send routing information (SRI) request message 2. Upon receipt of SRI message 2, HLR 114 examines the message and, in one case, determines that there is not enough information available to determine the appropriate routing address that is needed to deliver the original ISUP IAM message 1 to its destination. However, in such a scenario, HLR 114 is able to determine the routing address of a VLR 118 that contains the information necessary to continue the routing of ISUP IAM message 1. This determination is made via a lookup in an internal routing database 156, as shown in FIG. 2. The simplified sample HLR routing database 156 is keyed or indexed by MSISDN number 158 and includes a pointer or address 160 to a VLR node that is currently servicing each MSISDN entry. Consequently, HLR 114 formulates a Provide Routing Number (PRN) message 3, and addresses this message to VLR 118. The VLR 118, upon receipt of the PRN message 3, performs a database lookup based on the called party MSISDN and subsequently returns a mobile station roaming number (MSRN) which is used to identify the MSC that is currently servicing the called party. A simplified, sample VLR database 162 is shown in FIG. 2. VLR database 162 is keyed or indexed by MSISDN number 164, and includes an MSRN 166 that is associated with each MSISDN entry. Returning to FIG. 1, the MSRN value extracted from VLR database 162 is included in a PRN result or acknowledge (PRN Ack) message 4 that is formulated by the VLR 118 and returned to the interrogating HLR 114. Upon receipt of the PRN Ack message 4, HLR 114 formulates an SRI Acknowledge (SRI Ack) message 5 that serves as a response to the original SRI message 2. SRI Ack message 5 includes the MSRN that was provided by the VLR 118, and is delivered to the originator of the SRI message 2, GMSC 112. GMSC 112 receives the SRI Ack message 5 and uses the MSRN value contained therein to modify the routing label of the original ISUP IAM message 1. A modified ISUP IAM message 6 is subsequently produced which is addressed to the MSC that is currently serving the called party.
Again, it will be appreciated that the example presented above is a simple call setup scenario, intended primarily to illustrate the basic call setup and associated message flow processes associated therewith. Significantly more complicated call setup scenarios may be encountered in real world network implementations. Also, not all signaling messages received by a GMSC are necessarily directly related to call setup and teardown operations, and hence would not necessarily follow the same processing steps as described in the ISUP IAM call setup example presented above.
In the sample scenario illustrated in FIG. 1, HLR 114 and HLR 116 are each configured to service a pre-defined block of subscriber MSISDN numbers. In general, a specific series or block of MSISDN (or IMSI) numbers are pre-assigned to each HLR in a service provider""s network, as further indicated by routing table 150 in FIG. 2. Again, it should be appreciated that the HLR database 156 and GMSC routing table 150 structures shown in FIG. 2 are merely illustrative of the high level information storage concept and are not intended to represent the actual data structures that would typically be implemented in such network nodes. In many cases, service providers are not able to alter these blocks of assigned numbers within a given HLR unit because of routing limitations of the GMSC associated with the HLR unit. Consequently, service providers have no opportunity to dynamically re-allocate their MSISDN number base across multiple HLRs, so as to more efficiently utilize existing HLR resources (i.e., load sharing). It should be noted that this limitation is typically the result of routing table restrictions in the MSCs, and generally not database storage restrictions in the HLRs. That is, although HLRs can generally be populated so as to contain subscriber data entries for any IMSI or MSISDN number, GMSCs are typically only capable of routing messages based on an IMSI or MSISDN block in which the message""s IMSI or MSISDN number falls. These IMSI or MSISDN blocks are comprised of a sequential range of IMSI or MSISDN numbers. Thus, it is the limited routing capability of a GMSC that causes the problem, and typically not the HLR nodes.
For instance, in FIG. 1, all traffic relating to calls associated with an MSISDN number between 9199670000 and 9199679999 will be routed to HLR A 114 by the associated GMSC 112. As the service provider begins to acquire more and more customers (i.e., assigning more and more of the MSISDN numbers in the allocated block or series 9199670000 to 9199679999), the traffic or congestion experienced at HLR A 114 node will increase accordingly.
Now consider that a service provider owning HLR A 114 illustrated in FIG. 1 has acquired so many new customers that it is decided to invest in an additional HLR B 116. At the time of implementation HLR B 116 is populated with MSISDN number block 9194690000-9194699999. HLR B 116 is linked to the adjacent GMSC 112 and activated so as to service any calls corresponding to the pre-programmed MSISDN block.
The major shortcoming of range-based routing associated with such multiple HLR configurations can now be more fully appreciated. Despite the addition of the new HLR resource capacity represented by unit B, all call traffic associated with MSISDN numbers 9199670000-9199679999 must still be handled by a single HLR, HLR A 114. Even if the service provider has no customers within the MSISDN 9194690000-9194699999 number range, it is not possible for the service provider to dynamically re-allocate or re-distribute the xe2x80x9cfully assignedxe2x80x9d 9199670000-9199679999 MSISDN number block among the unused HLR B 116 unit. Thus, it is possible that a network service provider will be forced to operate in a situation where traffic to HLR A 114 is highly congested, while the HLR B 116 resource is completely unused. This can lead to less than efficient usage of installed resources, as it would be more efficient to load balance or share traffic more equally among the two HLR units.
It should be appreciated that, in addition to the load sharing concerns, there are similar issues and similar needs that arise when considering the porting of subscribers from one service provider to another, otherwise known as number portability (NP). Once again, one of the central problems facing a network operator in such a scenario is the ability to freely distribute subscriber information among multiple HLR nodes. With particular regard to the case of mobile number portability, it will be appreciated that ported mobile subscribers may either be ported xe2x80x9cinxe2x80x9d to an operator""s network from a competing carrier, or ported xe2x80x9coutxe2x80x9d of an operator""s network to a competing carrier. Consider the simplified network presented in FIG. 1 with regard to such an xe2x80x9cin-portedxe2x80x9d scenario. That is, the owner of network 100 acquires a new mobile subscriber that was formerly a customer of a competing network operator. For the purposes of example, assume that this new mobile subscriber has an MSISDN number of (919) 345-7015 and wishes to keep this same MSISDN number in the new operator""s network. By default, this new subscriber""s information would be stored and maintained in HLR A, as generally indicated by GMSC routing table 150 shown in FIG. 2. Consequently, when a signaling message associated with the new mobile subscriber that requires HLR access is received by GMSC 112, a lookup is performed in GMSC routing table 150 and the message is subsequently routed to HLR A 114. It will be again be appreciated that due to the range-based routing table configuration of GMSC 112, flexible allocation of in-ported mobile subscribers among available HLR resources is significantly impaired.
With regard to xe2x80x9cout-portedxe2x80x9d subscribers or mobile subscribers that have been ported out of a service provider""s network, the same flexible HLR allocation limitations exist due to the range-based routing table configuration in GMSC 112. Furthermore, in the case of a signaling message associated with a mobile subscriber that has been ported out of a service provider""s network, it will be appreciated that processing of the signaling message by one of the operator""s HLR nodes is no longer necessary. That is, since the subscriber has been ported out of the service provider""s network, the service provider""s network is no longer considered to be the mobile subscriber""s xe2x80x9chomexe2x80x9d and, consequently, the service provider""s home location registers (HLRS) no longer need to store information associated with the mobile subscriber. However, as generally indicated in FIGS. 1 and 2, despite elimination of the out-ported subscriber""s information from the service provider""s HLR resources, GMSC 112 will continue to route signaling messages associated with the mobile subscriber to one of the service provider""s HLR nodes.
Consider the case of an out-ported mobile subscriber with an MSISDN number of (919) 967-2000. When GMSC 112 receives a signaling message associated with the out-ported subscriber, a lookup is performed in routing table 150 and the signaling message is subsequently routed to HLR A 114 despite the fact that information for that mobile subscriber is no longer maintained in HLR A. Such unnecessary routing constitutes an inefficient use of both routing and HLR database resources.
Therefore, what is needed is a system and method of efficiently redirecting signaling messages associated with both in and out-ported mobile subscribers among HLR, equipment identity register (EIR), authentication center (AuC), short message service center (SMSC), and other similar signaling database type nodes, where message routing occurs in such a way as to preserve compliance with existing industry standard network management signaling protocols.
According to one aspect, the present invention includes a porting control routing (PCR) node that is adapted to efficiently route signaling messages associated with a mobile subscriber that has been either ported into or out of a service provider""s wireless communication network. The PCR node includes a communication module capable of transmitting and receiving data packets over a network. A range-based database contains range-based rule records indexed by blocks of identification numbers. An exceptions-based database contains exception-based rule records indexed by either a single identification number or a sub-block of identification numbers. In one embodiment, the exceptions-based database includes database node entity address information, routing number information, and ported status information for each identification number or identification number sub-block entry in the database. A database subsystem controller accesses at least one of the databases to extract routing information for the data packet. Because the PCR node includes both range- and exception based databases, flexibility in allocating mobile identification numbers among multiple HLRs is increased. Furthermore, the association of a ported status indicator and related routing information with entries in the exception based database allow the PCR node of the present invention to more efficiently utilize a service provider""s network resources.
Accordingly, it is an object of the present invention to provide a PCR node that is adapted to perform both range- and exception-based database lookups.
It is another object of the present invention to provide a PCR node that is adapted to maintain ported status information associated with a mobile subscriber.
It is another object of the present invention to provide a PCR node that is adapted to use stored ported status information associated with a mobile subscriber to determine, at least in part, where a signaling message should be routed.
It is another object of the present invention to provide a PCR node that is adapted to prevent a signaling message associated with mobile subscriber that has been ported out of a service provider""s network from unnecessarily accessing the service provider""s HLR resources.
It is another object of the present invention to provide a PCR node that is adapted to facilitate non-sequential MSISDN block or range based allocation of mobile subscriber information among multiple home location register (HLR) nodes.
It is another object of the present invention to provide a PCR node that is adapted to facilitate signaling message traffic or load sharing among multiple home location register (HLR) nodes.
Some of the objects of the invention having been stated hereinabove, other objects will become evident as the description proceeds, when taken in connection with the accompanying drawings as best described hereinbelow.